package com.qf.service.Impl;

import com.qf.dao.Impl.UserDaoImpl;
import com.qf.dao.UserDao;
import com.qf.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

@Service(value = "usi")
public class UserServiceImpl implements UserService {
    //这种注入有一种毛病，那就是不会走set，是根据类扫描，我们之前根据所有的类加载，加载同一个类，但是，如果我们加载了两个同一个类
    //传到工厂当中，那么这个时候用Autowired就会产生一个毛病，那就是根据类扫描，如果有两次类加载加载同一个类，那么存放到工厂中的map集合
    //就会被覆盖掉
//    @Autowired        //现根据类型再根据名字找
    //当出现两个冲突的时候就加一个qualifier，然后让它指向固定类对象的userDao
//    @Qualifier(value = "userDaoImpl")
    @Resource(name = "udi",type = UserDao.class)  //现根据名字再根据类型找
    private UserDao userDaoooo;
//    public void setUserDao(UserDao userDao){
//        this.userDaoooo=userDao;
//    }

    @Override
    public void sss() {
        userDaoooo.sss();
    }
}
